/**
 * 下划线转驼峰
 * @param {String} underline 中划线字符串
 */
function underline2camelCase(underline) {
    return underline.replace(/_(\w)/g, ($, $1) => {
        return $1.toUpperCase();
    });
}

/**
 * 首字母大写
 * @param {String} str 中划线字符串
 */
function capitalize(str) {
    return str.replace(/^(\w)/, ($, $1) => {
        return $1.toUpperCase();
    });
}

/**
 * 去除首尾单引号或反单引号
 * @param {String} str 字符串
 */
function trimQuote(str) {
    return str.replace(/^['`]/, '').replace(/['`]$/, '');
}

module.exports = {
    underline2camelCase,
    capitalize,
    trimQuote
};
